package com.csi.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.sql.Timestamp;

/**
 * 套餐表
 */
@Schema(description = "旅行套餐信息")
@Data
public class TravelPackage {
    @Schema(description = "套餐ID", required = true)
    private long id; //套餐id

    @Schema(description = "套餐名称", required = true)
    private String travelPackageName; //套餐名

    @Schema(description = "套餐描述")
    private String travelPackageDesc; //套餐描述

    @Schema(description = "酒店旅行社合同ID", required = true)
    private long hotelTravelId; //酒店旅行社合同id

    @Schema(description = "酒店ID", required = true)
    private long hotelId; //酒店id

    @Schema(description = "旅行社ID", required = true)
    private long travelId; //旅行社id

    @Schema(description = "出发时间", required = true)
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd") //转换时间格式
    private Timestamp travelDate; //出发时间

    @Schema(description = "结束时间", required = true)
    @DateTimeFormat(pattern = "yyyy-MM-dd ")
    @JsonFormat(pattern = "yyyy-MM-dd ") //转换时间格式
    private Timestamp overDate; //结束时间

    @Schema(description = "价格", required = true)
    private BigDecimal price; //价格

    @Schema(description = "价格描述")
    private String priceDesc; //价格描述

    @Schema(description = "导游ID", required = true)
    private long guideId; //导游id

    @Schema(description = "套餐类型")
    private String travelPackageType; //套餐类型

    @Schema(description = "套餐图片")
    private String travelPackageImage; //套餐图片

    @Schema(description = "套餐评分")
    private String score; //评分
    @Schema(description = "套餐初始地")
    private String initially; //套餐初始地
    @Schema(description = "套餐最大人数")
    private Integer maxPeople; //套餐初始地
    @Schema(description = "套餐剩余人数")
    private Integer surplusPeople;
}
